package gestion.horarios.model.jpa.entities;

import java.io.Serializable;
import javax.persistence.*;
import java.util.Date;


/**
 * The persistent class for the solicitudcambioplancurricular database table.
 * 
 */
@Entity
@Table(name="solicitudcambioplancurricular")
public class SolicitudCambioPlanCurricular implements Serializable {
	private static final long serialVersionUID = 1L;
	private int solicitudCambioPlanCurricularId;
	private String cambio;
	private String estado;
	private Date fechaSolicitud;
	private String motivo;
	private PlanCurricular plancurricular;
	private Usuario usuario;

    public SolicitudCambioPlanCurricular() {
    }


	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
	@Column(unique=true, nullable=false)
	public int getSolicitudCambioPlanCurricularId() {
		return this.solicitudCambioPlanCurricularId;
	}

	public void setSolicitudCambioPlanCurricularId(int solicitudCambioPlanCurricularId) {
		this.solicitudCambioPlanCurricularId = solicitudCambioPlanCurricularId;
	}


    @Lob()
	public String getCambio() {
		return this.cambio;
	}

	public void setCambio(String cambio) {
		this.cambio = cambio;
	}


	@Column(length=45)
	public String getEstado() {
		return this.estado;
	}

	public void setEstado(String estado) {
		this.estado = estado;
	}


    @Temporal( TemporalType.DATE)
	public Date getFechaSolicitud() {
		return this.fechaSolicitud;
	}

	public void setFechaSolicitud(Date fechaSolicitud) {
		this.fechaSolicitud = fechaSolicitud;
	}


    @Lob()
	public String getMotivo() {
		return this.motivo;
	}

	public void setMotivo(String motivo) {
		this.motivo = motivo;
	}


	//bi-directional many-to-one association to PlanCurricular
    @ManyToOne
	@JoinColumn(name="PlanCurricularId", nullable=false)
	public PlanCurricular getPlancurricular() {
		return this.plancurricular;
	}

	public void setPlancurricular(PlanCurricular plancurricular) {
		this.plancurricular = plancurricular;
	}
	

	//bi-directional many-to-one association to Usuario
    @ManyToOne
	@JoinColumn(name="UsuarioId", nullable=false)
	public Usuario getUsuario() {
		return this.usuario;
	}

	public void setUsuario(Usuario usuario) {
		this.usuario = usuario;
	}
	
}